package edu.ped.android.utils;


public class RelativeGesture extends GestureNFC{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	public RelativeGesture(){
		super();
	}

	public int compare(GestureNFC list){
		if( this.trajectory.get(0).equals(list.trajectory.get(0)) && 
				this.trajectory.get(this.trajectory.size()-1).equals(list.getTrajectory().get(list.getTrajectory().size()-1))
				&& list instanceof RelativeGesture){
			int u = 1;
			int saut = 0;
			for(int i = 1; i< list.getTrajectory().size();i++){				
				if(((trajectory.get(0).getX() - trajectory.get(u).getX()) == (list.getTrajectory().get(0).getX() - list.getTrajectory().get(i).getX()))
						&& ((trajectory.get(0).getY() - trajectory.get(u).getY()) == (list.getTrajectory().get(0).getY() - list.getTrajectory().get(i).getY()))){
					u++;
					saut = 0;
				}
				else{
					saut++;
					if(saut > SAUT)
						return COMPARE_TOO_LONG_JUMP;
				}
			}
			return COMPARE_SUCCESS;
		}
		return COMPARE_FAIL;		
	}
}